<template>
  <div class="goods-item" @click="itemClick">
    <img :src="showImage" alt="" @load="imageLoad">
    <div class="goods-info">
      <p>{{goodsitem.title}}</p>
      <span class="price">{{goodsitem.price}}</span>
      <span class="collect">{{goodsitem.cfav}}</span>
    </div>
  </div>
</template>

<script>
  export default {
    name: "GoodListitem",
    //import引入的组件需要注入到对象中才能使用
    components: {},
    props: {
      goodsitem:{
        type: Object,
        default(){
          return {}
        }
      }
    },
    data() {
      //这里存放数据
      return {
      
      };
    },
    //计算属性 类似于data概念
    computed: {
      showImage(){
        return this.goodsitem.image || this.goodsitem.show.img
      }
    },
    //监控data中的数据变化
    watch: {},
    //方法集合
    methods: {
      imageLoad(){
        this.$bus.$emit('itemImageLoad');
      },
      itemClick() {
  
        this.$router.push('/detail/'+this.goodsitem.iid);
      }
    },
    //生命周期 - 创建完成（可以访问当前this实例）
    created() {
    
    },
    //生命周期 - 挂载完成（可以访问DOM元素）
    mounted() {
    
    },
    beforeCreate() {}, //生命周期 - 创建之前
    beforeMount() {}, //生命周期 - 挂载之前
    beforeUpdate() {}, //生命周期 - 更新之前
    updated() {}, //生命周期 - 更新之后
    beforeDestroy() {}, //生命周期 - 销毁之前
    destroyed() {}, //生命周期 - 销毁完成
    activated() {}, //如果页面有keep-alive缓存功能，这个函数会触发
  }
</script>
<style scoped>
.goods-item{
  padding-bottom: 2.5rem;
  position: relative;
  width: 48%;
}
.goods-item img{
  width: 100%;
  border-radius: 0.3125rem ;
}
.goods-info{
  font-size: 0.75rem;
  position: absolute;
  bottom: 0.3125rem;
  left: 0;
  right: 0;
  overflow: hidden;
  text-align: center;
}
.goods-info{
  white-space: nowrap;
  margin-bottom: 0.1875rem;
}
.goods-info p{
  overflow: hidden;
  text-overflow: ellipsis;
}
.goods-info .price{
  color: var(--color-high-text);
  margin-right: 1.25rem;
}
.goods-info .collect{
  position: relative;
}
.goods-info .collect::before{
  content: '';
  position: absolute;
  left: -0.9375rem;
  top: -0.0625rem;
  width: 0.875rem;
  height: 0.875rem;
  background: url("../../../assets/img/common/collect.svg") 0 0/0.875rem 0.875rem;
}
 
</style>